home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Will We Miss Them?
/
Will We Miss Them (1995)(Laser Resources)(en-es)[Mac-PC].iso
/
pc
/
sample1.mst
< prev
next >
Wrap
Text File
|
1995-10-30
|
6KB
|
226 lines
'**************************************************************************
'* MSSetup Toolkit Sample 1
'**************************************************************************
'$DEFINE DEBUG ''Define for script development/debugging
'$INCLUDE 'setupapi.inc'
'$INCLUDE 'msdetect.inc'
''Dialog ID's
CONST WELCOME = 100
CONST ASKQUIT = 200
CONST DESTPATH = 300
CONST EXITFAILURE = 400
CONST EXITQUIT = 600
CONST EXITSUCCESS = 700
CONST OPTIONS = 800
CONST APPHELP = 900
CONST BADPATH = 6400
''Bitmap ID
CONST LOGO = 1
GLOBAL DEST$ ''Default destination directory.
GLOBAL OPTCUR$ ''Option selection from option dialog.
DECLARE SUB Install
DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
INIT:
CUIDLL$ = "mscuistf.dll" ''Custom user interface dll
HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure
SetBitmap CUIDLL$, LOGO
SetTitle "Will We Miss Them?"
szInf$ = GetSymbolValue("STF_SRCINFPATH")
IF szInf$ = "" THEN
szInf$ = GetSymbolValue("STF_CWDDIR") + "SAMPLE1.INF"
END IF
ReadInfFile szInf$
OPTCUR$ = "1"
DEST$ = "C:\wwmt"
'$IFDEF DEBUG
i% = SetSizeCheckMode(scmOnIgnore) '' could use scmOff; def = scmOnFatal
WinDrive$ = MID$(GetWindowsDir, 1, 1)
IF IsDriveValid(WinDrive$) = 0 THEN
i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
GOTO QUIT
END IF
'$ENDIF ''DEBUG
''WELCOME:
'' sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
'' IF sz$ = "CONTINUE" THEN
'' UIPop 1
''ELSE
'' GOSUB ASKQUIT
'' GOTO WELCOME
'' END IF
''OPTION:
'' SetSymbolValue "RadioDefault", OPTCUR$
''OPTL1:
'' sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", APPHELP, HELPPROC$)
'' OPTCUR$ = GetSymbolValue("ButtonChecked")
'' IF sz$ = "CONTINUE" THEN
UIPop(1)
'' ELSEIF sz$ = "REACTIVATE" THEN
'' GOTO OPTL1
'' ELSE
'' GOSUB ASKQUIT
'' GOTO OPTION
'' END IF
''GETPATH:
'' SetSymbolValue "EditTextIn", DEST$
'' SetSymbolValue "EditFocus", "END"
''GETPATHL1:
'' sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
'' DEST$ = GetSymbolValue("EditTextOut")
'' IF sz$ = "CONTINUE" THEN
'' IF IsDirWritable(DEST$) = 0 THEN
'' GOSUB BADPATH
'' GOTO GETPATHL1
'' END IF
'' UIPop 1
'' ELSEIF sz$ = "REACTIVATE" THEN
'' GOTO GETPATHL1
'' ELSEIF sz$ = "BACK" THEN
'' UIPop 1
'' GOTO OPTION
'' ELSE
'' GOSUB ASKQUIT
'' GOTO GETPATH
'' END IF
Install
QUIT:
'' ON ERROR GOTO ERRQUIT
'' IF ERR = 0 THEN
'' dlg% = EXITSUCCESS
'' ELSEIF ERR = STFQUIT THEN
'' dlg% = EXITQUIT
'' ELSE
'' dlg% = EXITFAILURE
'' END IF
''QUITL1:
'' sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
'' IF sz$ = "REACTIVATE" THEN
'' GOTO QUITL1
'' END IF
'' UIPop 1
END
''ERRQUIT:
'' i% = DoMsgBox("Setup sources were corrupted, call 555-1212!", "Setup Message", ''MB_OK+MB_TASKMODAL+MB_ICONHAND)
'' END
''BADPATH:
'' sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
'' IF sz$ = "REACTIVATE" THEN
'' GOTO BADPATH
'' END IF
'' UIPop 1
'' RETURN
''ASKQUIT:
'' sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
'' IF sz$ = "EXIT" THEN
'' UIPopAll
'' ERROR STFQUIT
'' ELSEIF sz$ = "REACTIVATE" THEN
'' GOTO ASKQUIT
'' ELSE
'' UIPop 1
'' END IF
'' RETURN
'**
'** Purpose:
'** Builds the copy list and performs all installation operations.
'** Arguments:
'** none.
'** Returns:
'** none.
'*************************************************************************
SUB Install STATIC
SrcDir$ = GetSymbolValue("STF_SRCDIR")
CreateDir DEST$, cmoNone
OpenLogFile MakePath(DEST$, "LOGFILE.OUT"), 0
WriteToLogFile ""
WriteToLogFile " User chose as destination directory: '" + DEST$ + "'"
WriteToLogFile " User chose option: '" + OPTCUR$ + "'"
WriteToLogFile ""
WriteToLogFile "May have had to create the directory: " + DEST$
WriteToLogFile ""
AddSectionFilesToCopyList "Files", SrcDir$, DEST$
''AddSectionKeyFileToCopyList "Options", OPTCUR$, SrcDir$, DEST$
CopyFilesInCopyList
ini$ = MakePath(DEST$, "WWMT.INI")
CreateIniKeyValue "WIN.INI", "Will We Miss Them?", "Option", OPTCUR$, cmoNone
CreateIniKeyValue ini$, "Section 1", "Key 1", "Value 1" , cmoNone
CreateIniKeyValue ini$, "Section 2", "Key 2", "Value 2" , cmoNone
CreateIniKeyValue ini$, "Section 3", "Key 3", "Value 3" , cmoNone
CreateProgmanGroup "Will We Miss Them?", "", cmoNone
ShowProgmanGroup "Will We Miss Them?", 1, cmoNone
CreateProgmanItem "Will We Miss Them?", "Will We Miss Them?", MakePath(SrcDir$,"")+"wwmt.exe ",MakePath(SrcDir$,"")+"panda2.ico,,,,", cmoOverwrite
''CreateProgmanItem "MSSetup Sample 1", "dlgprocs.c", "notepad.exe ''"+MakePath(DEST$,"dlgprocs.c"), "", cmoOverwrite
AddDos5Help "YOURAPP", "A brief help text for your Windows application."+chr$(10)+"It can be continued on another line with chr$(10).", cmoNone
CloseLogFile
END SUB
'**
'** Purpose:
'** Appends a file name to the end of a directory path,
'** inserting a backslash character as needed.
'** Arguments:
'** szDir$ - full directory path (with optional ending "\")
'** szFile$ - filename to append to directory
'** Returns:
'** Resulting fully qualified path name.
'*************************************************************************
FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
IF szDir$ = "" THEN
MakePath = szFile$
ELSEIF szFile$ = "" THEN
MakePath = szDir$
ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
MakePath = szDir$ + szFile$
ELSE
MakePath = szDir$ + "\" + szFile$
END IF
END FUNCTION